package com.example.backend.service;

import com.example.backend.util.PageUtils;
import org.springframework.stereotype.Service;

import java.util.Map;

/**
 * 共享单词本相关服务
 * @author 李月
 * @date 2022/5/4 16:53
 */
@Service
public interface SharedBookletService {
    /**
     * 分享单词本服务
     * @param bookletId 单词本id
     * @return 分享是否成功，0为分享成功，1为已分享，2为分享失败
     */
    public int shareBooklet(int bookletId);

    /**
     * 查看所有共享单词本服务
     * @param page 页码
     * @param pageSize 页面大小
     * @return PageUtils类型，页码、页面大小、总页面数量、共享单词本列表
     */
    public PageUtils getSharedBooklets(int page, int pageSize);

    /**
     *
     * @param bookletId 单词本id
     * @param userId 用户id
     * @return 收藏是否成功，0为收藏成功，1为已收藏，2为收藏失败
     */
    public int collection(int bookletId, int userId);

    /**
     *查看共享单词本详情服务
     * @param bookletId 单词本id
     * @return 单词本详情，包含名称、作者、简介、条目数量、创建时间
     */
    public Map<String, Object> getSharedBookletSpecification(int bookletId);

    /**
     * 管理员无条件删除共享单词本服务
     * @param bookletId 单词本id
     * @return 删除是否成功，0为删除成功，1为单词本不存在，2为删除失败
     */
    public int deleteSharedBooklet(int bookletId);
}
